import {Carousel} from "antd-mobile";
import { Image } from "antd";
import style from "./carousel.module.scss";
const imgFallback = require("../../common/imageDefault/imgloaderr.png").default;

/* 异常处理
由于浏览器必须要在执行事件处理函数之后，才能知道有没有掉用过 preventDefault() ，
这就导致了浏览器不能及时响应滚动，略有延迟。
 
所以为了让页面滚动的效果如丝般顺滑，从 chrome56 开始，
在 window、document 和 body 上注册的 touchstart 和 touchmove 事件处理函数，
会默认为是 passive: true。浏览器忽略 preventDefault() 就可以第一时间滚动了。
 
举例：
wnidow.addEventListener('touchmove', func) 效果和下面一句一样
wnidow.addEventListener('touchmove', func, { passive: true })
*/
function CarouselDIY(props){
    return (
        <Carousel autoplay={true} infinite>
            {
                (props.itemlist || [1,2,3]).map((item,i)=>{
                    return (
                        <div key={i} className={style["legendImgBox"]}>
                            <Image className={style["legendImg"]} src={item} fallback= {imgFallback}  
                                 onLoad={() => {
                                    // fire window resize event to change height
                                    window.dispatchEvent(new Event('resize'));
                                  }}
                            />
                        </div>
                    )
                })
            }
        </Carousel>
    )
}

export default CarouselDIY;